class JQSqlBaseIF {
    constructor(conn) {
		this.conn=conn;
    }
	
	static instance(sub_item,conn){
		console.log(`./subs/${sub_item}`);
		const JQSqlBase = require(`./subs/${sub_item}`);
		console.log('sub_item  ' +23);
		let obj = new JQSqlBase(conn);
		console.log('sub_item  ' +254);
		return obj;
	}
	
	
 //    async get(id,keys) { }
	// async remove(id) {}
	// async removes(ids) {}
	// async create(data,assign,on_dup) {}
	// async update(data,assign,on_dup) {}
	// async update_where(data,assign,where) {}
	// async updateSql(sql,params) {}
	// async querySql(sql,params) {}
	// async queryOne(alias_keys,params,group_by,order_by){}
	async query(params,first,size,is_count){}//(alias_keys,params,first,size,group_by,order_by,is_count){}
	
	// async count(alias_keys,params,order_by,group_by){}
	// async query2(alias_keys,alias_a_keys, a_keys,a_params, b_table,alias_b_keys,b_keys,b_params,joint,on_a,on_b,params, first,size,group_by,order_by,is_count){}//(alias_a_keys, a_keys,a_params,alias_b_keys, b_table,b_keys,b_params,joint,on_a,on_b,params, first,size,group_by,order_by,is_count){}
	// async count2(alias_keys,alias_a_keys, a_keys,a_params,b_table,alias_b_keys, b_keys,b_params,joint,on_a,on_b,params, group_by,order_by){}//(alias_a_keys, a_keys,a_params,alias_b_keys, b_table,b_keys,b_params,joint,on_a,on_b,params, group_by,order_by){}
	
}
module.exports = JQSqlBaseIF;


